package com.kingdee.eas.dahua.exponent.app;

import org.apache.log4j.Logger;
import javax.ejb.*;
import java.rmi.RemoteException;
import com.kingdee.bos.*;
import com.kingdee.bos.util.BOSObjectType;
import com.kingdee.bos.metadata.IMetaDataPK;
import com.kingdee.bos.metadata.rule.RuleExecutor;
import com.kingdee.bos.metadata.MetaDataPK;
//import com.kingdee.bos.metadata.entity.EntityViewInfo;
import com.kingdee.bos.framework.ejb.AbstractEntityControllerBean;
import com.kingdee.bos.framework.ejb.AbstractBizControllerBean;
//import com.kingdee.bos.dao.IObjectPK;
import com.kingdee.bos.dao.IObjectValue;
import com.kingdee.bos.dao.IObjectCollection;
import com.kingdee.bos.service.ServiceContext;
import com.kingdee.bos.service.IServiceContext;

import java.lang.String;
import com.kingdee.bos.metadata.entity.EntityViewInfo;
import com.kingdee.eas.common.EASBizException;
import com.kingdee.bos.dao.IObjectPK;
import com.kingdee.bos.dao.ormapping.ObjectUuidPK;
import com.kingdee.eas.dahua.enums.StateEnum;
import com.kingdee.eas.dahua.exponent.MaterialInfromInfo;
import com.kingdee.eas.dahua.exponent.MaterialInfromCollection;
import com.kingdee.eas.dahua.exponent.SquareConsumeInfo;
import com.kingdee.bos.metadata.entity.SelectorItemCollection;
import com.kingdee.eas.framework.CoreBaseCollection;
import com.kingdee.eas.framework.SystemEnum;
import com.kingdee.eas.framework.CoreBillBaseCollection;
import com.kingdee.eas.framework.CoreBaseInfo;
import com.kingdee.eas.framework.app.CoreBillBaseControllerBean;
import com.kingdee.eas.framework.ObjectBaseCollection;
import com.kingdee.eas.util.app.ContextUtil;

public class MaterialInfromControllerBean extends AbstractMaterialInfromControllerBean
{
    private static Logger logger =
        Logger.getLogger("com.kingdee.eas.dahua.exponent.app.MaterialInfromControllerBean");
    
    protected void _unAudit(Context ctx, IObjectValue model)throws BOSException {
		super._unAudit(ctx, model);
		MaterialInfromInfo info = (MaterialInfromInfo)model;
		info.setState(StateEnum.save);
		info.setAuditor(null);
		try {
			_update(ctx,new ObjectUuidPK(info.getId()),info);
		} catch (EASBizException e) {
			e.printStackTrace();
		}
	}
	protected void _audit(Context ctx, IObjectValue model) throws BOSException {
		super._audit(ctx, model);
		MaterialInfromInfo info = (MaterialInfromInfo)model;
		info.setState(StateEnum.audited);
		info.setAuditor(ContextUtil.getCurrentUserInfo(ctx));
		try {
			_update(ctx,new ObjectUuidPK(info.getId()),info);
		} catch (EASBizException e) {
			e.printStackTrace();
		}
	}
	
	protected void _closed(Context ctx, IObjectValue model) throws BOSException {
		super._closed(ctx, model);
		MaterialInfromInfo info = (MaterialInfromInfo)model;
		info.setState(StateEnum.closed);
		try {
			_update(ctx,new ObjectUuidPK(info.getId()),info);
		} catch (EASBizException e) {
			e.printStackTrace();
		}
		
	}

}